#ifndef GAMEMENU_H
#define GAMEMENU_H
class gamemenu_error : public std::logic_error 
{
public:
	gamemenu_error(const std::string &error) : logic_error(error) { }
};
class GameMenu
{
private:
       struct SDL_Surface *menuBackground_;
       struct SDL_Rect menuBackgroundRect_;
       class SDLText *exitButtonText_;
       class SDLText *itemButtonText_;
       class SDLText *hpText_;
       class SDLButton *invButton_;
       class SDLButton *exitButton_;
       class Character *character_;
       class InventoryWindow *inWindow_;
       bool inventoryWindowVisible;
public:
       GameMenu(class Character *character) throw(gamemenu_error);
       ~GameMenu();
       void is_clicked(int x, int y, class SDLMap *map);
       void render(struct SDL_Surface *screen);
       bool inventoryVisible() const;
};
#endif